<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" 
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml"   
      xmlns:h="http://java.sun.com/jsf/html"
      xmlns:f="http://java.sun.com/jsf/core"
      xmlns:p="http://primefaces.org/ui"
      xmlns:composite="http://java.sun.com/jsf/composite">
    
    <h:head>
        <f:loadBundle basename="com.brain.core.i18n.ApplicationResources" var="message" />
        <title><h:outputText value="#{message['general.cabecera.titulo.aplicacion']}"/></title>            
        <link type="text/css" rel="stylesheet" href="#{request.contextPath}/recursos/css/default.css" />
        <link type="text/css" rel="stylesheet" href="#{request.contextPath}/recursos/css/theme.css" />
        <script type="text/javascript" src="#{request.contextPath}/recursos/js/script.js" /> 
    </h:head>

    <composite:interface>
        <composite:attribute name="ordenCompraDto" />
        <composite:attribute name="action" 
                             method-signature="void action()" />

    </composite:interface>

    <composite:implementation>
            <h:form onsubmit="return checkSubmit();"  id="form" prependId="false">    
                <p:panel id="pnlPrincipal" header="#{i18n['orden.compra.titulo']}"  style="#{applicationMBean.estiloTitulo}">
                    <h:panelGrid id="pgFormFilter" columns="4" cellpadding="4" styleClass="formulario">                        
                        <h:outputLabel value="#{i18n['general.label.id']}"  styleClass="label"/>
                        <p:inputText value="#{ordenCompraMBean.dtoFiltro.id}" onkeypress="return fn_validaTecla('entero',this)" 
                                     style="#{applicationMBean.estilo}" size="15">
                            <f:validateLongRange minimum="0" maximum="999999" />
                        </p:inputText>

                        <h:outputLabel value="#{i18n['orden.compra.label.descproveedor']}" styleClass="label"/>
                        <p:inputText label="#{i18n['orden.compra.label.descproveedor']}" 
                                     value="#{ordenCompraMBean.dtoFiltro.proveedorDto.razonSocial}" 
                                     style="#{applicationMBean.estilo}" size="50">
                            <f:validateLength maximum="100" minimum="0" />
                        </p:inputText>
                        
                        <h:outputLabel value="#{i18n['orden.compra.label.nrodocproveedor']}" styleClass="label"/>
                        <p:inputText label="#{i18n['orden.compra.label.nrodocproveedor']}" 
                                     value="#{ordenCompraMBean.dtoFiltro.proveedorDto.numeroDocumento}" 
                                     style="#{applicationMBean.estilo}" size="30">
                            <f:validateLength maximum="20" minimum="0" />
                        </p:inputText>
                                                                       
                        <h:outputLabel value="#{i18n['orden.compra.label.fechadesde']}" styleClass="label"/>
                        <h:inputText value="#{ordenCompraMBean.fechaFiltroDto.fechaInicio}" style="#{applicationMBean.estilo}" 
                                     onkeypress="return fn_validaTecla('fecha',this);">
                            <f:convertDateTime pattern="#{applicationMBean.formatoFecha}"  timeZone="#{applicationMBean.timeZone}"/>
                        </h:inputText>
                            
                            <h:outputLabel value="#{i18n['orden.compra.label.fechadesde']}" styleClass="label"/>
                            <h:inputText value="#{ordenCompraMBean.fechaFiltroDto.fechaFin}" style="#{applicationMBean.estilo}" 
                                     onkeypress="return fn_validaTecla('fecha',this);">                            
                            <f:convertDateTime pattern="#{applicationMBean.formatoFecha}"  timeZone="#{applicationMBean.timeZone}"/> 
                        </h:inputText>
                        
                        <p:spacer width="10" />
                        <p:commandButton icon="ui-icon ui-icon-search" title="#{i18n['general.button.buscar.filtro.tip']}" accesskey="#{applicationMBean.keyBuscar}"
                                         value="#{i18n['general.button.buscar.filtro']}" ajax="true" 
                                         style="#{applicationMBean.cssBotonBusqueda}"
                                         action="#{ordenCompraMBean.buscar}"
                                         update="pnlTabla,pnlPrincipal">
                            
                        </p:commandButton>  
                        <p:spacer width="10" />
                        <h:outputText  value="#{ordenCompraMBean.lista.size()} #{i18n['form.general.mensaje.cantidad.encontrada']}" styleClass="mensaje" rendered="#{ordenCompraMBean.lista!=null}"/>
                    </h:panelGrid>   
                </p:panel>

                <p:panel id="pnlTabla" header="#{i18n['general.panel.titulo.busqueda.resultado']}" style="#{applicationMBean.estiloTitulo}">
                    <h:panelGrid id="pngTabla" columns="1">
                        <p:dataTable id="tblPrincipal" value="#{ordenCompraMBean.lista}" var="dto"
                                     styleClass="general"                          
                                     paginator="false" rows="#{sessionMBean.cantidadRegistros}"  widgetVar="widTable">                        
                            <p:column style="text-align:center;font-size: 10px" >                                
                                <h:commandButton value="Sel."
                                                 action="#{cc.attrs.action}" immediate="true"
                                                 >
                                    <f:setPropertyActionListener value="#{dto}"
                                                         target="#{cc.attrs.ordenCompraDto}" />                                      
                                </h:commandButton>
                                                                
                            </p:column>
                            <p:column headerText="#{i18n['general.label.id']}" styleClass="general">
                                <h:outputText value="#{dto.id}" styleClass="general" />
                            </p:column>
                           
                            <p:column headerText="#{i18n['orden.compra.label.estado']}" styleClass="general" >
                                <h:outputText value="#{dto.estadoDto.descripcion}" styleClass="general" />
                            </p:column>
                            <p:column headerText="#{i18n['orden.compra.label.fechacreacion']}" styleClass="general" >
                                <h:outputText value="#{dto.fechaCreacion}" styleClass="general" >
                                    <f:convertDateTime pattern="#{applicationMBean.formatoFecha}"  timeZone="#{applicationMBean.timeZone}"/> 
                                </h:outputText>
                            </p:column>
                            <p:column headerText="#{i18n['orden.compra.label.usuariocreacion']}" styleClass="general" >
                                <h:outputText value="#{dto.usuarioCreacionDto.login}" styleClass="general" />
                            </p:column>
                            <p:column headerText="#{i18n['orden.compra.label.proveedor']}" styleClass="general" >
                                <h:outputText value="#{dto.proveedorDto.razonSocial}" styleClass="general" />
                            </p:column>
                            <p:column headerText="#{i18n['orden.compra.label.moneda']}" styleClass="general" >
                                <h:outputText value="#{dto.monedaDto.descripcion}" styleClass="general" />
                            </p:column>
                            <p:column headerText="#{i18n['orden.compra.label.subtotal']}" styleClass="general" >
                                <h:outputText value="#{dto.subTotal}" styleClass="general" />
                            </p:column>
                           <p:column headerText="#{i18n['orden.compra.label.impuestos']}" styleClass="general" >
                                <h:outputText value="#{dto.impuestoSubTotal}" styleClass="general" />
                            </p:column>
                            <p:column headerText="#{i18n['orden.compra.label.total']}" styleClass="general" >
                                <h:outputText value="#{dto.total}" styleClass="general" />
                            </p:column>                                        
                        </p:dataTable>
                    </h:panelGrid>
                </p:panel>
            </h:form>
        </composite:implementation>
</html>
